home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / disk / cdrom / MusicBox-2.1os.lha / MusicBox / Icon3.c < prev    next >
Encoding:
C/C++ Source or Header  |  2000-09-29  |  12.2 KB  |  267 lines

  1. /*
  2.  ##########################################################################
  3.  ####                                                                  ####
  4.  ####                        The MusicBox Project                      ####
  5.  ####                    ============================                  ####
  6.  ####                                                                  ####
  7.  #### Icon3.c                                                          ####
  8.  ####                                                                  ####
  9.  #### Version 2.1os  --  September 29, 2000                            ####
  10.  ####                                                                  ####
  11.  #### Copyright (C) 1994  Thomas Dreibholz                             ####
  12.  ####               2000  Molbachweg 7                                 ####
  13.  ####                     51674 Wiehl                                  ####
  14.  ####                     Germany                                      ####
  15.  ####                                                                  ####
  16.  ####                     EMail: Dreibholz@bigfoot.com                 ####
  17.  ####                     WWW:   http://www.bigfoot.com/~dreibholz     ####
  18.  ####                                                                  ####
  19.  ##########################################################################
  20. */
  21. /***************************************************************************
  22.  *                                                                         *
  23.  *   This program is free software; you can redistribute it and/or modify  *
  24.  *   it under the terms of the GNU General Public License as published by  *
  25.  *   the Free Software Foundation; either version 2 of the License, or     *
  26.  *   (at your option) any later version.                                   *
  27.  *                                                                         *
  28.  ***************************************************************************/
  29.  
  30. /* MusicBoxMBArchiv MusicBoxMBArchiv-Icon */
  31.  
  32. struct Remember *ChipRemember=NULL;
  33.  
  34. UWORD MBArchivI1Data[] =
  35. {
  36. /* Plane 0 */
  37.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0300,
  38.     0x0000,0x0003,0x06A5,0x7000,0x0300,0x9100,0x0003,0x0000,
  39.     0x0038,0x030A,0x0011,0x4003,0x00D8,0x1800,0x0300,0x8897,
  40.     0x0003,0x0000,0x0800,0x0300,0x0000,0x0003,0x0553,0x67C0,
  41.     0x030A,0x9296,0x8003,0x0800,0x3E00,0x0300,0x0000,0x0003,
  42.     0x0000,0x0000,0x030E,0xAFD7,0xE003,0x01A5,0x4FE0,0x0300,
  43.     0x0000,0x0003,0x0000,0x0000,0x0335,0x6ADD,0x7C03,0x0000,
  44.     0x0000,0x0300,0x0001,0xF803,0x0B52,0x29F0,0x0319,0x54AA,
  45.     0x0003,0x0000,0x0000,0x0300,0x0000,0x0003,0x0000,0x0000,
  46.     0x0320,0x0000,0x1803,0x03C9,0xF800,0x032A,0xEB55,0xF003,
  47.     0x0000,0x0000,0x0300,0x0000,0x0003,0x03AB,0x7E00,0x0300,
  48.     0x0000,0x0003,0x0000,0x0000,0x0300,0x0000,0x0003,0x06B5,
  49.     0x77C0,0x0300,0x0000,0x0003,0x0000,0x0000,0x0300,0x0000,
  50.     0x0003,0x0F32,0x5B00,0x0300,0x0000,0x0003,0x0FBF,0x0000,
  51.     0x0300,0x0000,0x0003,0x0000,0xFF80,0x0300,0x0000,0x0003,
  52.     0x0000,0x0000,0x0300,0x0000,0x0003,0x3FFF,0xFFFF,0xFFFF,
  53.     0xFFFF,0xFFFF,0x0000,0x0000,0x0000,0x0000,0x0003,0x0000,
  54.     0x0000,0x0000,0x0000,0x0003,0x01ED,0xD5AB,0xC355,0x01AE,
  55.     0x0003,0x0000,0x0000,0x0000,0x0000,0x0003,0x0000,0x0000,
  56.     0x0000,0x0000,0x0003,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  57.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  58.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  59. /* Plane 1 */
  60.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xC000,0x0000,0x0000,
  61.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  62.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  63.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  64.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  65.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  66.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  67.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  68.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  69.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  70.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  71.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  72.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  73.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  74.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  75.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  76.     0x0000,0x0000,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFFFF,
  77.     0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFE12,0x2A54,0x3CAA,0xFE51,
  78.     0xFFFC,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFFFF,0xFFFF,
  79.     0xFFFF,0xFFFF,0xFFFC,0xC000,0x0000,0x0000,0x0000,0x0000,
  80.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  81.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  82. /* Plane 2 */
  83.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFCFF,
  84.     0xFFFF,0xFFFC,0x395A,0x8FFF,0xFCFF,0x6EFF,0xFFFC,0x3FFF,
  85.     0xFFC7,0xFCF5,0xFFEE,0xBFFC,0x3F27,0xE7FF,0xFCFF,0x7768,
  86.     0xFFFC,0x3FFF,0xF7FF,0xFCFF,0xFFFF,0xFFFC,0x3AAC,0x983F,
  87.     0xFCF5,0x6D69,0x7FFC,0x37FF,0xC1FF,0xFCFF,0xFFFF,0xFFFC,
  88.     0x3FFF,0xFFFF,0xFCF1,0x5028,0x1FFC,0x3E5A,0xB01F,0xFCFF,
  89.     0xFFFF,0xFFFC,0x3FFF,0xFFFF,0xFCCA,0x9522,0x83FC,0x3FFF,
  90.     0xFFFF,0xFCFF,0xFFFE,0x07FC,0x34AD,0xD60F,0xFCE6,0xAB55,
  91.     0xFFFC,0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,
  92.     0xFCDF,0xFFFF,0xE7FC,0x3C36,0x07FF,0xFCD5,0x14AA,0x0FFC,
  93.     0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x3C54,0x81FF,0xFCFF,
  94.     0xFFFF,0xFFFC,0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x394A,
  95.     0x883F,0xFCFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,0xFCFF,0xFFFF,
  96.     0xFFFC,0x30CD,0xA4FF,0xFCFF,0xFFFF,0xFFFC,0x3040,0xFFFF,
  97.     0xFCFF,0xFFFF,0xFFFC,0x3FFF,0x007F,0xFCFF,0xFFFF,0xFFFC,
  98.     0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x0000,0x0000,0x0000,
  99.     0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,
  100.     0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3E12,0x2A54,0x3CAA,0xFE51,
  101.     0xFFFC,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,
  102.     0xFFFF,0xFFFF,0xFFFC,0x0000,0x0000,0x0000,0x0000,0x0000,
  103.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  104.     0x0000,0x0000,0x8000,0x0000,0x0000,0x0000,0x0000,
  105. };
  106.  
  107. #asm
  108. E1:
  109.    public _MBArchivI1Data_Len
  110. _MBArchivI1Data_Len
  111.    dc.l E1-_MBArchivI1Data
  112. #endasm
  113.  
  114. extern LONG MBArchivI1Data_Len;
  115.  
  116. struct Image MBArchivI1 =
  117. {
  118.     0, 0,         /* Upper left corner */
  119.     80, 35, 3,       /* Width, Height, Depth */
  120.     MBArchivI1Data,      /* Image data */
  121.     0x0007, 0x0000,     /* PlanePick, PlaneOnOff */
  122.     NULL       /* Next image */
  123. };
  124.  
  125. UWORD MBArchivI2Data[] =
  126. {
  127. /* Plane 0 */
  128.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,
  129.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,
  130.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  131.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  132.     0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  133.     0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,
  134.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,
  135.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  136.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  137.     0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  138.     0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,
  139.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,
  140.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  141.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  142.     0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  143.     0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,
  144.     0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,
  145.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,
  146.     0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,
  147.     0xFFFF,0xFFFF,0xFFFF,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
  148.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  149.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  150. /* Plane 1 */
  151.     0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xC000,0x0000,0x0000,
  152.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  153.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  154.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  155.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  156.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  157.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  158.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  159.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  160.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  161.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  162.     0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,
  163.     0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,
  164.     0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,
  165.     0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,0x0000,0x0000,
  166.     0xC000,0x0000,0x0000,0x0000,0x0000,0xC000,0x0000,0x0000,
  167.     0x0000,0x0000,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFFFF,
  168.     0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFE12,0x2A54,0x3CAA,0xFE51,
  169.     0xFFFC,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0xFFFF,0xFFFF,
  170.     0xFFFF,0xFFFF,0xFFFC,0xC000,0x0000,0x0000,0x0000,0x0000,
  171.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  172.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  173. /* Plane 2 */
  174.     0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0xFFFF,0xFCFF,
  175.     0xFFFF,0xFFFC,0x395A,0x8FFF,0xFCFF,0x6EFF,0xFFFC,0x3FFF,
  176.     0xFFC7,0xFCF5,0xFFEE,0xBFFC,0x3F27,0xE7FF,0xFCFF,0x7768,
  177.     0xFFFC,0x3FFF,0xF7FF,0xFCFF,0xFFFF,0xFFFC,0x3AAC,0x983F,
  178.     0xFCF5,0x6D69,0x7FFC,0x37FF,0xC1FF,0xFCFF,0xFFFF,0xFFFC,
  179.     0x3FFF,0xFFFF,0xFCF1,0x5028,0x1FFC,0x3E5A,0xB01F,0xFCFF,
  180.     0xFFFF,0xFFFC,0x3FFF,0xFFFF,0xFCCA,0x9522,0x83FC,0x3FFF,
  181.     0xFFFF,0xFCFF,0xFFFE,0x07FC,0x34AD,0xD60F,0xFCE6,0xAB55,
  182.     0xFFFC,0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,
  183.     0xFCDF,0xFFFF,0xE7FC,0x3C36,0x07FF,0xFCD5,0x14AA,0x0FFC,
  184.     0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x3C54,0x81FF,0xFCFF,
  185.     0xFFFF,0xFFFC,0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x394A,
  186.     0x883F,0xFCFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,0xFCFF,0xFFFF,
  187.     0xFFFC,0x30CD,0xA4FF,0xFCFF,0xFFFF,0xFFFC,0x3040,0xFFFF,
  188.     0xFCFF,0xFFFF,0xFFFC,0x3FFF,0x007F,0xFCFF,0xFFFF,0xFFFC,
  189.     0x3FFF,0xFFFF,0xFCFF,0xFFFF,0xFFFC,0x0000,0x0000,0x0000,
  190.     0x0000,0x0000,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,
  191.     0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3E12,0x2A54,0x3CAA,0xFE51,
  192.     0xFFFC,0x3FFF,0xFFFF,0xFFFF,0xFFFF,0xFFFC,0x3FFF,0xFFFF,
  193.     0xFFFF,0xFFFF,0xFFFC,0x0000,0x0000,0x0000,0x0000,0x0000,
  194.     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  195.     0x0000,0x0000,0x8000,0x0000,0x0000,0x0000,0x0000,
  196. };
  197.  
  198. #asm
  199. E2:
  200.    public _MBArchivI2Data_Len
  201. _MBArchivI2Data_Len
  202.    dc.l E2-_MBArchivI2Data
  203. #endasm
  204.  
  205. extern LONG MBArchivI2Data_Len;
  206.  
  207. struct Image MBArchivI2 =
  208. {
  209.     0, 0,         /* Upper left corner */
  210.     80, 35, 3,       /* Width, Height, Depth */
  211.     MBArchivI2Data,      /* Image data */
  212.     0x0007, 0x0000,     /* PlanePick, PlaneOnOff */
  213.     NULL       /* Next image */
  214. };
  215.  
  216. struct DiskObject MBArchiv =
  217. {
  218.     WB_DISKMAGIC,    /* Magic Number */
  219.     WB_DISKVERSION,     /* Version */
  220.     {          /* Embedded Gadget Structure */
  221.    NULL,       /* Next Gadget Pointer */
  222.    0, 0, 80, 36,     /* Left,Top,Width,Height */
  223.    GADGIMAGE | GADGHIMAGE, /* Flags */
  224.    RELVERIFY | GADGIMMEDIATE,    /* Activation Flags */
  225.    BOOLGADGET,    /* Gadget Type */
  226.    (APTR)&MBArchivI1, /* Render Image */
  227.    (APTR)&MBArchivI2, /* Select Image */
  228.    NULL,       /* Gadget Text */
  229.    NULL,       /* Mutual Exclude */
  230.    NULL,       /* Special Info */
  231.    0,       /* Gadget ID */
  232.    (APTR) 0x0001,    /* User Data (Revision) */
  233.     },
  234.     WBTOOL,       /* Icon Type */
  235.     NULL,         /* Default Tool */
  236.     NULL,         /* Tool Type Array */
  237.     NO_ICON_POSITION,      /* Current X */
  238.     NO_ICON_POSITION,      /* Current Y */
  239.     NULL,         /* Drawer Structure */
  240.     NULL,         /* Tool Window */
  241.     8192          /* Stack Size */
  242. };
  243.  
  244. VOID EntferneIcon()
  245. {
  246.  if(ChipRemember) FreeRemember(&ChipRemember,TRUE);
  247. }
  248.  
  249. BOOL InitIcon()
  250. {
  251.  REGISTER UBYTE *c1,*c2;
  252.  
  253.  c1=AllocRemember(&ChipRemember,MBArchivI1Data_Len,MEMF_CHIP);
  254.  c2=AllocRemember(&ChipRemember,MBArchivI2Data_Len,MEMF_CHIP);
  255.  if((c1==NULL)||(c2==NULL))
  256.   {
  257.    puts("Nicht genug Chip-Speicher!");
  258.    return(FALSE);
  259.   }
  260.  CopyMem(&MBArchivI1Data,c1,MBArchivI1Data_Len);
  261.  CopyMem(&MBArchivI2Data,c2,MBArchivI2Data_Len);
  262.  MBArchivI1.ImageData=c1;
  263.  MBArchivI2.ImageData=c2;
  264.  return(TRUE);
  265. }
  266.  
  267.